package com.cloud.bssp.java8.lambda;

/**
 * @description： 测试匿名内部类和Lambda表达式
 * @author：weirx
 * @date：2021/10/18 14:46
 * @version：3.0
 */
public class TestLambdaAndAnonymity {

    @FunctionalInterface
    private interface ITest{
        void test();
    }
    /**
     * 执行方法
     * @param r
     */
    public static void process(Runnable r){
        r.run();
    }

    public static void main(String[] args) {
        // 使用匿名类
        Runnable r1 = new Runnable() {
            @Override
            public void run() {
                System.out.println("this is r1");
            }
        };

        // 使用Lambda
        Runnable r2 = ()-> System.out.println("this is r2");

        process(r1);
        process(r2);
        // 直接将lambda作为参数传递
        process(()-> System.out.println("this is r3"));
    }
}
